package org.springframework.context.support;

import org.springframework.beans.BeansException;

/**
 * @Name ClassPathXmlApplicationContext
 * @Description: 支持加载 Xml 配置文件中定义的 BeanDefinition 信息功能的上下文 [具体] 实现类
 * @Version v1.0.0
 * @Author: lichao
 * @Date: 2024-03-19 20:05:43
 **/
public class ClassPathXmlApplicationContext extends AbstractXmlApplicationContext {
    private String[] configLocations;

    /**
     * 加载 Xml 配置文件中定义的 BeanDefinition 信息，并刷新上下文
     *
     * @param configLocation Xml 配置文件
     * @version v1.0.0
     * @author lichao
     * @date 2024-03-19 20:09:47
     */
    public ClassPathXmlApplicationContext(String configLocation) {
        this(new String[]{configLocation});
    }

    /**
     * 加载 Xml 配置文件中定义的 BeanDefinition 信息，并刷新上下文
     *
     * @param configLocations Xml 配置文件清单
     * @version v1.0.0
     * @author lichao
     * @date 2024-03-19 20:10:20
     */
    public ClassPathXmlApplicationContext(String[] configLocations) {
        this.configLocations = configLocations;
        refresh();
    }

    @Override
    protected String[] getConfigLocations() {
        return this.configLocations;
    }

}

